Correct by Construction Networks Using Stepwise Refinement

نویسندگان

  • Leonid Ryzhyk
  • Nikolaj Bjørner
  • Marco Canini
  • Jean-Baptiste Jeannin
  • Cole Schlesinger
  • Douglas B. Terry
  • George Varghese
چکیده

Building software-defined network controllers is an exercise in software development and, as such, likely to introduce bugs. We present Cocoon, a framework for SDN development that facilitates both the design and verification of complex networks using stepwise refinement to move from a high-level specification to the final network implementation. A Cocoon user specifies intermediate design levels in a hierarchical design process that delineates the modularity in complicated network forwarding and makes verification extremely efficient. For example, an enterprise network, equipped with VLANs, ACLs, and Level 2 and Level 3 Routing, can be decomposed cleanly into abstractions for each mechanism, and the resulting stepwise verification is over 200x faster than verifying the final implementation. Cocoon further separates static network design from its dynamically changing configuration. The former is verified at design time, while the latter is checked at run time using statically defined invariants. We present six different SDN use cases including B4 and F10. Our performance evaluation demonstrates that Cocoon is not only faster than existing verification tools but can also find many bugs statically before the network design has been fully specified.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Correct by Construction Networks using Stepwise Refinement

Building software-defined network controllers is an exercise in software development and, as such, likely to introduce bugs. We present CoCoNet, a framework for SDN development that facilitates both the design and verification of complex networks using stepwise refinement to move from a high-level specification to the final network implementation. A CoCoNet user specifies intermediate design le...

متن کامل

Building Software Agents by Stepwise Feature Introduction—A Case Study

Stepwise feature introduction is an approach to construct software systems by incrementally extending a system with new features. This approach emphasizes reliable software construction in the meaning that each layer is a superposition refinement of its preceding layer, and each evolution version of the implementation is a data refinement of its preceding version or the initial specification. T...

متن کامل

Program Families: Program Construction by Context Independent Refinements

The concept of program families is a generalisation of the conventional stepwise refinement paradigm. We formalise program families by allowing Hoare-triplets to be parameterized. Next WC derive a simple calculus to develop programs which are known a priori to bc correct with respect to explicitly formulated preand postconditions. Program families deal with at least two important problems of co...

متن کامل

Unifying Program Construction and Modification

We propose a method which integrates program modification to the refinement calculus style of program development. Given a program developed through stepwise refinement of a specification, we propose an approach to specify modifications and to derive a new program from the existing refinement steps. This approach is based on the refinement lattice operator meet. A modification to a specificatio...

متن کامل

Stepwise Refinement of Data Flow Architectures

Software and hardware architectures are prone to modi cations We demon strate how a mathematically founded re nement calculus for a class of ar chitectures namely data ow networks can be used to modify a system in a provably correct way The calculus consists of basic rules to add and to remove components and channels to a system

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2017